package demo;

//接口
//接口里面没有构造方法和静态代码块
//接口可以认为是 xxx 的特性
//可以用 abstract 修饰
interface IShape{
    //public abstract 可以省略，默认接口里的抽象方法类型
    public abstract void draw();

    //public static final 可以省略，
    public static final int a = 10;

    //如果想在接口里实现方法，则需用到 default 来实现
    default void func(){

    }
}

interface IA{
    void func1();
}

interface IB{
    void func2();
}
//接口可以继承接口
interface IC extends IA,IB{
    void func3();
}

//类可以实现接口，一个类可以实现多个接口，若实现的接口继承了其他的接口，则需要把其他的接口里的抽象方法也实现了
class B1 implements IA,IB{

    @Override
    public void func1() {

    }

    @Override
    public void func2() {

    }
}

class A1 implements IC{

    @Override
    public void func1() {

    }

    @Override
    public void func2() {

    }

    @Override
    public void func3() {

    }
}


public class Test1 {
}
